<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>select_characters [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_ocr.html">OCR</a> / <a href="toc_ocr_segmentation.html">分割</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">select_characters</span><span data-if="c" style="display:none;">T_select_characters</span><span data-if="cpp" style="display:none;">SelectCharacters</span><span data-if="dotnet" style="display:none;">SelectCharacters</span><span data-if="python" style="display:none;">select_characters</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">select_characters</span><span data-if="c" style="display:none;">T_select_characters</span><span data-if="cpp" style="display:none;">SelectCharacters</span><span data-if="dotnet" style="display:none;">SelectCharacters</span><span data-if="python" style="display:none;">select_characters</span></code> — Selects characters from a given region.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>select_characters</b>(<a href="#Region"><i>区域</i></a> : <a href="#RegionCharacters"><i>RegionCharacters</i></a> : <a href="#DotPrint"><i>DotPrint</i></a>, <a href="#StrokeWidth"><i>StrokeWidth</i></a>, <a href="#CharWidth"><i>CharWidth</i></a>, <a href="#CharHeight"><i>CharHeight</i></a>, <a href="#Punctuation"><i>Punctuation</i></a>, <a href="#DiacriticMarks"><i>DiacriticMarks</i></a>, <a href="#PartitionMethod"><i>PartitionMethod</i></a>, <a href="#PartitionLines"><i>PartitionLines</i></a>, <a href="#FragmentDistance"><i>FragmentDistance</i></a>, <a href="#ConnectFragments"><i>ConnectFragments</i></a>, <a href="#ClutterSizeMax"><i>ClutterSizeMax</i></a>, <a href="#StopAfter"><i>StopAfter</i></a> : )</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_select_characters</b>(const Hobject <a href="#Region"><i>区域</i></a>, Hobject* <a href="#RegionCharacters"><i>RegionCharacters</i></a>, const Htuple <a href="#DotPrint"><i>DotPrint</i></a>, const Htuple <a href="#StrokeWidth"><i>StrokeWidth</i></a>, const Htuple <a href="#CharWidth"><i>CharWidth</i></a>, const Htuple <a href="#CharHeight"><i>CharHeight</i></a>, const Htuple <a href="#Punctuation"><i>Punctuation</i></a>, const Htuple <a href="#DiacriticMarks"><i>DiacriticMarks</i></a>, const Htuple <a href="#PartitionMethod"><i>PartitionMethod</i></a>, const Htuple <a href="#PartitionLines"><i>PartitionLines</i></a>, const Htuple <a href="#FragmentDistance"><i>FragmentDistance</i></a>, const Htuple <a href="#ConnectFragments"><i>ConnectFragments</i></a>, const Htuple <a href="#ClutterSizeMax"><i>ClutterSizeMax</i></a>, const Htuple <a href="#StopAfter"><i>StopAfter</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>SelectCharacters</b>(const HObject&amp; <a href="#Region"><i>区域</i></a>, HObject* <a href="#RegionCharacters"><i>RegionCharacters</i></a>, const HTuple&amp; <a href="#DotPrint"><i>DotPrint</i></a>, const HTuple&amp; <a href="#StrokeWidth"><i>StrokeWidth</i></a>, const HTuple&amp; <a href="#CharWidth"><i>CharWidth</i></a>, const HTuple&amp; <a href="#CharHeight"><i>CharHeight</i></a>, const HTuple&amp; <a href="#Punctuation"><i>Punctuation</i></a>, const HTuple&amp; <a href="#DiacriticMarks"><i>DiacriticMarks</i></a>, const HTuple&amp; <a href="#PartitionMethod"><i>PartitionMethod</i></a>, const HTuple&amp; <a href="#PartitionLines"><i>PartitionLines</i></a>, const HTuple&amp; <a href="#FragmentDistance"><i>FragmentDistance</i></a>, const HTuple&amp; <a href="#ConnectFragments"><i>ConnectFragments</i></a>, const HTuple&amp; <a href="#ClutterSizeMax"><i>ClutterSizeMax</i></a>, const HTuple&amp; <a href="#StopAfter"><i>StopAfter</i></a>)</code></p>
<p>
<code><a href="HRegion.html">HRegion</a> <a href="HRegion.html">HRegion</a>::<b>SelectCharacters</b>(const HString&amp; <a href="#DotPrint"><i>DotPrint</i></a>, const HString&amp; <a href="#StrokeWidth"><i>StrokeWidth</i></a>, const HTuple&amp; <a href="#CharWidth"><i>CharWidth</i></a>, const HTuple&amp; <a href="#CharHeight"><i>CharHeight</i></a>, const HString&amp; <a href="#Punctuation"><i>Punctuation</i></a>, const HString&amp; <a href="#DiacriticMarks"><i>DiacriticMarks</i></a>, const HString&amp; <a href="#PartitionMethod"><i>PartitionMethod</i></a>, const HString&amp; <a href="#PartitionLines"><i>PartitionLines</i></a>, const HString&amp; <a href="#FragmentDistance"><i>FragmentDistance</i></a>, const HString&amp; <a href="#ConnectFragments"><i>ConnectFragments</i></a>, Hlong <a href="#ClutterSizeMax"><i>ClutterSizeMax</i></a>, const HString&amp; <a href="#StopAfter"><i>StopAfter</i></a>) const</code></p>
<p>
<code><a href="HRegion.html">HRegion</a> <a href="HRegion.html">HRegion</a>::<b>SelectCharacters</b>(const char* <a href="#DotPrint"><i>DotPrint</i></a>, const char* <a href="#StrokeWidth"><i>StrokeWidth</i></a>, const HTuple&amp; <a href="#CharWidth"><i>CharWidth</i></a>, const HTuple&amp; <a href="#CharHeight"><i>CharHeight</i></a>, const char* <a href="#Punctuation"><i>Punctuation</i></a>, const char* <a href="#DiacriticMarks"><i>DiacriticMarks</i></a>, const char* <a href="#PartitionMethod"><i>PartitionMethod</i></a>, const char* <a href="#PartitionLines"><i>PartitionLines</i></a>, const char* <a href="#FragmentDistance"><i>FragmentDistance</i></a>, const char* <a href="#ConnectFragments"><i>ConnectFragments</i></a>, Hlong <a href="#ClutterSizeMax"><i>ClutterSizeMax</i></a>, const char* <a href="#StopAfter"><i>StopAfter</i></a>) const</code></p>
<p>
<code><a href="HRegion.html">HRegion</a> <a href="HRegion.html">HRegion</a>::<b>SelectCharacters</b>(const wchar_t* <a href="#DotPrint"><i>DotPrint</i></a>, const wchar_t* <a href="#StrokeWidth"><i>StrokeWidth</i></a>, const HTuple&amp; <a href="#CharWidth"><i>CharWidth</i></a>, const HTuple&amp; <a href="#CharHeight"><i>CharHeight</i></a>, const wchar_t* <a href="#Punctuation"><i>Punctuation</i></a>, const wchar_t* <a href="#DiacriticMarks"><i>DiacriticMarks</i></a>, const wchar_t* <a href="#PartitionMethod"><i>PartitionMethod</i></a>, const wchar_t* <a href="#PartitionLines"><i>PartitionLines</i></a>, const wchar_t* <a href="#FragmentDistance"><i>FragmentDistance</i></a>, const wchar_t* <a href="#ConnectFragments"><i>ConnectFragments</i></a>, Hlong <a href="#ClutterSizeMax"><i>ClutterSizeMax</i></a>, const wchar_t* <a href="#StopAfter"><i>StopAfter</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>SelectCharacters</b>(<a href="HObject.html">HObject</a> <a href="#Region"><i>区域</i></a>, out <a href="HObject.html">HObject</a> <a href="#RegionCharacters"><i>regionCharacters</i></a>, <a href="HTuple.html">HTuple</a> <a href="#DotPrint"><i>dotPrint</i></a>, <a href="HTuple.html">HTuple</a> <a href="#StrokeWidth"><i>strokeWidth</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CharWidth"><i>charWidth</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CharHeight"><i>charHeight</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Punctuation"><i>punctuation</i></a>, <a href="HTuple.html">HTuple</a> <a href="#DiacriticMarks"><i>diacriticMarks</i></a>, <a href="HTuple.html">HTuple</a> <a href="#PartitionMethod"><i>partitionMethod</i></a>, <a href="HTuple.html">HTuple</a> <a href="#PartitionLines"><i>partitionLines</i></a>, <a href="HTuple.html">HTuple</a> <a href="#FragmentDistance"><i>fragmentDistance</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ConnectFragments"><i>connectFragments</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ClutterSizeMax"><i>clutterSizeMax</i></a>, <a href="HTuple.html">HTuple</a> <a href="#StopAfter"><i>stopAfter</i></a>)</code></p>
<p>
<code><a href="HRegion.html">HRegion</a> <a href="HRegion.html">HRegion</a>.<b>SelectCharacters</b>(string <a href="#DotPrint"><i>dotPrint</i></a>, string <a href="#StrokeWidth"><i>strokeWidth</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CharWidth"><i>charWidth</i></a>, <a href="HTuple.html">HTuple</a> <a href="#CharHeight"><i>charHeight</i></a>, string <a href="#Punctuation"><i>punctuation</i></a>, string <a href="#DiacriticMarks"><i>diacriticMarks</i></a>, string <a href="#PartitionMethod"><i>partitionMethod</i></a>, string <a href="#PartitionLines"><i>partitionLines</i></a>, string <a href="#FragmentDistance"><i>fragmentDistance</i></a>, string <a href="#ConnectFragments"><i>connectFragments</i></a>, int <a href="#ClutterSizeMax"><i>clutterSizeMax</i></a>, string <a href="#StopAfter"><i>stopAfter</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>select_characters</b>(<a href="#Region"><i>区域</i></a>: HObject, <a href="#DotPrint"><i>dot_print</i></a>: str, <a href="#StrokeWidth"><i>stroke_width</i></a>: str, <a href="#CharWidth"><i>char_width</i></a>: Sequence[int], <a href="#CharHeight"><i>char_height</i></a>: Sequence[int], <a href="#Punctuation"><i>punctuation</i></a>: str, <a href="#DiacriticMarks"><i>diacritic_marks</i></a>: str, <a href="#PartitionMethod"><i>partition_method</i></a>: str, <a href="#PartitionLines"><i>partition_lines</i></a>: str, <a href="#FragmentDistance"><i>fragment_distance</i></a>: str, <a href="#ConnectFragments"><i>connect_fragments</i></a>: str, <a href="#ClutterSizeMax"><i>clutter_size_max</i></a>: int, <a href="#StopAfter"><i>stop_after</i></a>: str) -&gt; HObject</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p><code><span data-if="hdevelop" style="display:inline">select_characters</span><span data-if="c" style="display:none">select_characters</span><span data-if="cpp" style="display:none">SelectCharacters</span><span data-if="com" style="display:none">SelectCharacters</span><span data-if="dotnet" style="display:none">SelectCharacters</span><span data-if="python" style="display:none">select_characters</span></code> selects from a given <a href="#Region"><i><code><span data-if="hdevelop" style="display:inline">区域</span><span data-if="c" style="display:none">区域</span><span data-if="cpp" style="display:none">区域</span><span data-if="com" style="display:none">区域</span><span data-if="dotnet" style="display:none">区域</span><span data-if="python" style="display:none">区域</span></code></i></a> the
areas which might be characters and returns them in
<a href="#RegionCharacters"><i><code><span data-if="hdevelop" style="display:inline">RegionCharacters</span><span data-if="c" style="display:none">RegionCharacters</span><span data-if="cpp" style="display:none">RegionCharacters</span><span data-if="com" style="display:none">RegionCharacters</span><span data-if="dotnet" style="display:none">regionCharacters</span><span data-if="python" style="display:none">region_characters</span></code></i></a>. This is done by using features like
<a href="#StrokeWidth"><i><code><span data-if="hdevelop" style="display:inline">StrokeWidth</span><span data-if="c" style="display:none">StrokeWidth</span><span data-if="cpp" style="display:none">StrokeWidth</span><span data-if="com" style="display:none">StrokeWidth</span><span data-if="dotnet" style="display:none">strokeWidth</span><span data-if="python" style="display:none">stroke_width</span></code></i></a>, <a href="#DotPrint"><i><code><span data-if="hdevelop" style="display:inline">DotPrint</span><span data-if="c" style="display:none">DotPrint</span><span data-if="cpp" style="display:none">DotPrint</span><span data-if="com" style="display:none">DotPrint</span><span data-if="dotnet" style="display:none">dotPrint</span><span data-if="python" style="display:none">dot_print</span></code></i></a>, the size of the characters and
some more. The given <a href="#Region"><i><code><span data-if="hdevelop" style="display:inline">区域</span><span data-if="c" style="display:none">区域</span><span data-if="cpp" style="display:none">区域</span><span data-if="com" style="display:none">区域</span><span data-if="dotnet" style="display:none">区域</span><span data-if="python" style="display:none">区域</span></code></i></a> should be united, else every
<a href="#Region"><i><code><span data-if="hdevelop" style="display:inline">区域</span><span data-if="c" style="display:none">区域</span><span data-if="cpp" style="display:none">区域</span><span data-if="com" style="display:none">区域</span><span data-if="dotnet" style="display:none">区域</span><span data-if="python" style="display:none">区域</span></code></i></a> is processed separately. Thus do not call
<a href="connection.html"><code><span data-if="hdevelop" style="display:inline">connection</span><span data-if="c" style="display:none">connection</span><span data-if="cpp" style="display:none">Connection</span><span data-if="com" style="display:none">Connection</span><span data-if="dotnet" style="display:none">Connection</span><span data-if="python" style="display:none">connection</span></code></a> before calling <code><span data-if="hdevelop" style="display:inline">select_characters</span><span data-if="c" style="display:none">select_characters</span><span data-if="cpp" style="display:none">SelectCharacters</span><span data-if="com" style="display:none">SelectCharacters</span><span data-if="dotnet" style="display:none">SelectCharacters</span><span data-if="python" style="display:none">select_characters</span></code>, because
then fragments or dots would not be connected to a character.
If you have more than one region with text, you can of course handle
them without merging them.
The <a href="#Region"><i><code><span data-if="hdevelop" style="display:inline">区域</span><span data-if="c" style="display:none">区域</span><span data-if="cpp" style="display:none">区域</span><span data-if="com" style="display:none">区域</span><span data-if="dotnet" style="display:none">区域</span><span data-if="python" style="display:none">区域</span></code></i></a> for <code><span data-if="hdevelop" style="display:inline">select_characters</span><span data-if="c" style="display:none">select_characters</span><span data-if="cpp" style="display:none">SelectCharacters</span><span data-if="com" style="display:none">SelectCharacters</span><span data-if="dotnet" style="display:none">SelectCharacters</span><span data-if="python" style="display:none">select_characters</span></code> typically comes
from <a href="segment_characters.html"><code><span data-if="hdevelop" style="display:inline">segment_characters</span><span data-if="c" style="display:none">segment_characters</span><span data-if="cpp" style="display:none">SegmentCharacters</span><span data-if="com" style="display:none">SegmentCharacters</span><span data-if="dotnet" style="display:none">SegmentCharacters</span><span data-if="python" style="display:none">segment_characters</span></code></a> but also any other segmentation operators
can be used.
</p>
<p>The process of the selection can be partitioned into four parts.
All steps are influenced by the parameters <a href="#StrokeWidth"><i><code><span data-if="hdevelop" style="display:inline">StrokeWidth</span><span data-if="c" style="display:none">StrokeWidth</span><span data-if="cpp" style="display:none">StrokeWidth</span><span data-if="com" style="display:none">StrokeWidth</span><span data-if="dotnet" style="display:none">strokeWidth</span><span data-if="python" style="display:none">stroke_width</span></code></i></a>,
<a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a>, and <a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>.
If you loose small objects like dots, adapt the minimum <a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>
and the minimum <a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a>.
But some parameters affect the result of a certain step in particular.
A closer description follows below.
With the parameter <a href="#StopAfter"><i><code><span data-if="hdevelop" style="display:inline">StopAfter</span><span data-if="c" style="display:none">StopAfter</span><span data-if="cpp" style="display:none">StopAfter</span><span data-if="com" style="display:none">StopAfter</span><span data-if="dotnet" style="display:none">stopAfter</span><span data-if="python" style="display:none">stop_after</span></code></i></a> you can terminate after a specified
step.
</p>
<p>In the first step, <i><span data-if="hdevelop" style="display:inline">'step1_select_candidates'</span><span data-if="c" style="display:none">"step1_select_candidates"</span><span data-if="cpp" style="display:none">"step1_select_candidates"</span><span data-if="com" style="display:none">"step1_select_candidates"</span><span data-if="dotnet" style="display:none">"step1_select_candidates"</span><span data-if="python" style="display:none">"step1_select_candidates"</span></i>,
<a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a> and the <a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a> are used to select the
candidates. The result of this step is also affected by
<a href="#ClutterSizeMax"><i><code><span data-if="hdevelop" style="display:inline">ClutterSizeMax</span><span data-if="c" style="display:none">ClutterSizeMax</span><span data-if="cpp" style="display:none">ClutterSizeMax</span><span data-if="com" style="display:none">ClutterSizeMax</span><span data-if="dotnet" style="display:none">clutterSizeMax</span><span data-if="python" style="display:none">clutter_size_max</span></code></i></a>.
</p>
<p>In the next step, <i><span data-if="hdevelop" style="display:inline">'step2_partition_characters'</span><span data-if="c" style="display:none">"step2_partition_characters"</span><span data-if="cpp" style="display:none">"step2_partition_characters"</span><span data-if="com" style="display:none">"step2_partition_characters"</span><span data-if="dotnet" style="display:none">"step2_partition_characters"</span><span data-if="python" style="display:none">"step2_partition_characters"</span></i>, the parameter
<a href="#PartitionMethod"><i><code><span data-if="hdevelop" style="display:inline">PartitionMethod</span><span data-if="c" style="display:none">PartitionMethod</span><span data-if="cpp" style="display:none">PartitionMethod</span><span data-if="com" style="display:none">PartitionMethod</span><span data-if="dotnet" style="display:none">partitionMethod</span><span data-if="python" style="display:none">partition_method</span></code></i></a> and the parameter <a href="#PartitionLines"><i><code><span data-if="hdevelop" style="display:inline">PartitionLines</span><span data-if="c" style="display:none">PartitionLines</span><span data-if="cpp" style="display:none">PartitionLines</span><span data-if="com" style="display:none">PartitionLines</span><span data-if="dotnet" style="display:none">partitionLines</span><span data-if="python" style="display:none">partition_lines</span></code></i></a> influence
the result.
</p>
<p>Step three, <i><span data-if="hdevelop" style="display:inline">'step3_connect_fragments'</span><span data-if="c" style="display:none">"step3_connect_fragments"</span><span data-if="cpp" style="display:none">"step3_connect_fragments"</span><span data-if="com" style="display:none">"step3_connect_fragments"</span><span data-if="dotnet" style="display:none">"step3_connect_fragments"</span><span data-if="python" style="display:none">"step3_connect_fragments"</span></i>, uses the parameters
<a href="#ConnectFragments"><i><code><span data-if="hdevelop" style="display:inline">ConnectFragments</span><span data-if="c" style="display:none">ConnectFragments</span><span data-if="cpp" style="display:none">ConnectFragments</span><span data-if="com" style="display:none">ConnectFragments</span><span data-if="dotnet" style="display:none">connectFragments</span><span data-if="python" style="display:none">connect_fragments</span></code></i></a> and <a href="#DotPrint"><i><code><span data-if="hdevelop" style="display:inline">DotPrint</span><span data-if="c" style="display:none">DotPrint</span><span data-if="cpp" style="display:none">DotPrint</span><span data-if="com" style="display:none">DotPrint</span><span data-if="dotnet" style="display:none">dotPrint</span><span data-if="python" style="display:none">dot_print</span></code></i></a>. If dot-printed characters
have to be detected and some dots are not connected to the character, there
are two ways to overcome this problem:
You can increase the <a href="#FragmentDistance"><i><code><span data-if="hdevelop" style="display:inline">FragmentDistance</span><span data-if="c" style="display:none">FragmentDistance</span><span data-if="cpp" style="display:none">FragmentDistance</span><span data-if="com" style="display:none">FragmentDistance</span><span data-if="dotnet" style="display:none">fragmentDistance</span><span data-if="python" style="display:none">fragment_distance</span></code></i></a> and/or decrease the
<a href="#StrokeWidth"><i><code><span data-if="hdevelop" style="display:inline">StrokeWidth</span><span data-if="c" style="display:none">StrokeWidth</span><span data-if="cpp" style="display:none">StrokeWidth</span><span data-if="com" style="display:none">StrokeWidth</span><span data-if="dotnet" style="display:none">strokeWidth</span><span data-if="python" style="display:none">stroke_width</span></code></i></a>.
</p>
<p>In the last step, <i><span data-if="hdevelop" style="display:inline">'step4_select_characters'</span><span data-if="c" style="display:none">"step4_select_characters"</span><span data-if="cpp" style="display:none">"step4_select_characters"</span><span data-if="com" style="display:none">"step4_select_characters"</span><span data-if="dotnet" style="display:none">"step4_select_characters"</span><span data-if="python" style="display:none">"step4_select_characters"</span></i>, the result is affected
by the parameters <a href="#DiacriticMarks"><i><code><span data-if="hdevelop" style="display:inline">DiacriticMarks</span><span data-if="c" style="display:none">DiacriticMarks</span><span data-if="cpp" style="display:none">DiacriticMarks</span><span data-if="com" style="display:none">DiacriticMarks</span><span data-if="dotnet" style="display:none">diacriticMarks</span><span data-if="python" style="display:none">diacritic_marks</span></code></i></a> and <a href="#Punctuation"><i><code><span data-if="hdevelop" style="display:inline">Punctuation</span><span data-if="c" style="display:none">Punctuation</span><span data-if="cpp" style="display:none">Punctuation</span><span data-if="com" style="display:none">Punctuation</span><span data-if="dotnet" style="display:none">punctuation</span><span data-if="python" style="display:none">punctuation</span></code></i></a>.
</p>
<p><a href="#DotPrint"><i><code><span data-if="hdevelop" style="display:inline">DotPrint</span><span data-if="c" style="display:none">DotPrint</span><span data-if="cpp" style="display:none">DotPrint</span><span data-if="com" style="display:none">DotPrint</span><span data-if="dotnet" style="display:none">dotPrint</span><span data-if="python" style="display:none">dot_print</span></code></i></a>:
Should be set to <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i> if dot prints should be read, else to
<i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i>.
</p>
<p><a href="#StrokeWidth"><i><code><span data-if="hdevelop" style="display:inline">StrokeWidth</span><span data-if="c" style="display:none">StrokeWidth</span><span data-if="cpp" style="display:none">StrokeWidth</span><span data-if="com" style="display:none">StrokeWidth</span><span data-if="dotnet" style="display:none">strokeWidth</span><span data-if="python" style="display:none">stroke_width</span></code></i></a>:
Specifies the stroke width of the text. It is used to calculate internally
used mask sizes to determine the characters. This mask sizes are also
influenced through the parameters <a href="#DotPrint"><i><code><span data-if="hdevelop" style="display:inline">DotPrint</span><span data-if="c" style="display:none">DotPrint</span><span data-if="cpp" style="display:none">DotPrint</span><span data-if="com" style="display:none">DotPrint</span><span data-if="dotnet" style="display:none">dotPrint</span><span data-if="python" style="display:none">dot_print</span></code></i></a>, the average
<a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>, and the average <a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a>.
</p>
<p><a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>:
This can be a tuple with up to three values. The first value is the
average width of a character.  The second is the minimum width of a
character and the third is the maximum width of a character.
If the minimum is not set or equal -1, 该算子 automatically sets
these value depending on average <a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>. The same is the
case if the maximum is not set. Some examples:
</p>
<p>[10]       sets the average character width to 10, the minimum and
maximum are calculated by 该算子.
</p>
<p>[10,-1,20] sets the average character width to 10, the minimum value is
calculated by the system, and the maximum is set to 20.
</p>
<p>[10,5,20]  sets the average character width to 10, the minimum to 5,
and the maximum to 20.
</p>
<p><a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a>:
This can be a tuple with up to three values. The first value is the
average height of a character. The second is the minimum height of a
character and the third is the maximum height of a character.
If the minimum is not set or equal -1, 该算子 automatically sets
these value depending on average <a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a>. The same is the
case if the maximum is not set. Some examples:
</p>
<p>[10]       sets the average character height to 10, the minimum and
maximum are calculated by 该算子.
</p>
<p>[10,-1,20] sets the average character height to 10 the minimum value is
calculated by the system and the maximum is set to 20.
</p>
<p>[10,5,20]  this sets the average character height to 10, the minimum to 5
and the maximum to 20.
</p>
<p><a href="#Punctuation"><i><code><span data-if="hdevelop" style="display:inline">Punctuation</span><span data-if="c" style="display:none">Punctuation</span><span data-if="cpp" style="display:none">Punctuation</span><span data-if="com" style="display:none">Punctuation</span><span data-if="dotnet" style="display:none">punctuation</span><span data-if="python" style="display:none">punctuation</span></code></i></a>:
Set this parameter to <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i> if 该算子 also has to detect
punctuation marks (e.g., .,:'`"), otherwise they will be suppressed.
</p>
<p><a href="#DiacriticMarks"><i><code><span data-if="hdevelop" style="display:inline">DiacriticMarks</span><span data-if="c" style="display:none">DiacriticMarks</span><span data-if="cpp" style="display:none">DiacriticMarks</span><span data-if="com" style="display:none">DiacriticMarks</span><span data-if="dotnet" style="display:none">diacriticMarks</span><span data-if="python" style="display:none">diacritic_marks</span></code></i></a>:
Set this parameter to <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i> if the text in your application
contains diacritic marks (e.g., â,é,ö), or to <i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i> to suppress
them.
</p>
<p><a href="#PartitionMethod"><i><code><span data-if="hdevelop" style="display:inline">PartitionMethod</span><span data-if="c" style="display:none">PartitionMethod</span><span data-if="cpp" style="display:none">PartitionMethod</span><span data-if="com" style="display:none">PartitionMethod</span><span data-if="dotnet" style="display:none">partitionMethod</span><span data-if="python" style="display:none">partition_method</span></code></i></a>:
If neighboring characters are printed close to each other, they may be
partly merged. With this parameter you can specify the method to partition
such characters. The possible values are <i><span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span></i>, which means no
partitioning is performed. <i><span data-if="hdevelop" style="display:inline">'fixed_width'</span><span data-if="c" style="display:none">"fixed_width"</span><span data-if="cpp" style="display:none">"fixed_width"</span><span data-if="com" style="display:none">"fixed_width"</span><span data-if="dotnet" style="display:none">"fixed_width"</span><span data-if="python" style="display:none">"fixed_width"</span></i> means that the partitioning
assumes a constant character width. If the width of the extracted region is
well above the average <a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>, the region is split into parts
that have the given average <a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a>. The partitioning starts at
the left border of the region.
<i><span data-if="hdevelop" style="display:inline">'variable_width'</span><span data-if="c" style="display:none">"variable_width"</span><span data-if="cpp" style="display:none">"variable_width"</span><span data-if="com" style="display:none">"variable_width"</span><span data-if="dotnet" style="display:none">"variable_width"</span><span data-if="python" style="display:none">"variable_width"</span></i> means that the characters are partitioned at the
position where they have the thinnest connection. This method can be selected
for characters that are printed with a variable-width font or if many
consecutive characters are extracted as one symbol.
It could be helpful to call <a href="text_line_slant.html"><code><span data-if="hdevelop" style="display:inline">text_line_slant</span><span data-if="c" style="display:none">text_line_slant</span><span data-if="cpp" style="display:none">TextLineSlant</span><span data-if="com" style="display:none">TextLineSlant</span><span data-if="dotnet" style="display:none">TextLineSlant</span><span data-if="python" style="display:none">text_line_slant</span></code></a> and/or use
<a href="text_line_orientation.html"><code><span data-if="hdevelop" style="display:inline">text_line_orientation</span><span data-if="c" style="display:none">text_line_orientation</span><span data-if="cpp" style="display:none">TextLineOrientation</span><span data-if="com" style="display:none">TextLineOrientation</span><span data-if="dotnet" style="display:none">TextLineOrientation</span><span data-if="python" style="display:none">text_line_orientation</span></code></a> before calling <code><span data-if="hdevelop" style="display:inline">select_characters</span><span data-if="c" style="display:none">select_characters</span><span data-if="cpp" style="display:none">SelectCharacters</span><span data-if="com" style="display:none">SelectCharacters</span><span data-if="dotnet" style="display:none">SelectCharacters</span><span data-if="python" style="display:none">select_characters</span></code>.
</p>
<p><a href="#PartitionLines"><i><code><span data-if="hdevelop" style="display:inline">PartitionLines</span><span data-if="c" style="display:none">PartitionLines</span><span data-if="cpp" style="display:none">PartitionLines</span><span data-if="com" style="display:none">PartitionLines</span><span data-if="dotnet" style="display:none">partitionLines</span><span data-if="python" style="display:none">partition_lines</span></code></i></a>:
If some text lines or some characters of different text lines are connected,
set this parameter to <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i>.
</p>
<p><a href="#FragmentDistance"><i><code><span data-if="hdevelop" style="display:inline">FragmentDistance</span><span data-if="c" style="display:none">FragmentDistance</span><span data-if="cpp" style="display:none">FragmentDistance</span><span data-if="com" style="display:none">FragmentDistance</span><span data-if="dotnet" style="display:none">fragmentDistance</span><span data-if="python" style="display:none">fragment_distance</span></code></i></a>:
This parameter influences the connection of character fragments. If too
much is connected, set the parameter to <i><span data-if="hdevelop" style="display:inline">'narrow'</span><span data-if="c" style="display:none">"narrow"</span><span data-if="cpp" style="display:none">"narrow"</span><span data-if="com" style="display:none">"narrow"</span><span data-if="dotnet" style="display:none">"narrow"</span><span data-if="python" style="display:none">"narrow"</span></i> or
<i><span data-if="hdevelop" style="display:inline">'medium'</span><span data-if="c" style="display:none">"medium"</span><span data-if="cpp" style="display:none">"medium"</span><span data-if="com" style="display:none">"medium"</span><span data-if="dotnet" style="display:none">"medium"</span><span data-if="python" style="display:none">"medium"</span></i>. In the case that more fragments should be connected,
set the parameter to <i><span data-if="hdevelop" style="display:inline">'medium'</span><span data-if="c" style="display:none">"medium"</span><span data-if="cpp" style="display:none">"medium"</span><span data-if="com" style="display:none">"medium"</span><span data-if="dotnet" style="display:none">"medium"</span><span data-if="python" style="display:none">"medium"</span></i> or <i><span data-if="hdevelop" style="display:inline">'wide'</span><span data-if="c" style="display:none">"wide"</span><span data-if="cpp" style="display:none">"wide"</span><span data-if="com" style="display:none">"wide"</span><span data-if="dotnet" style="display:none">"wide"</span><span data-if="python" style="display:none">"wide"</span></i>.
The connection is also influenced by the maximum of <a href="#CharWidth"><i><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></i></a> and
<a href="#CharHeight"><i><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></i></a>. See also <a href="#ConnectFragments"><i><code><span data-if="hdevelop" style="display:inline">ConnectFragments</span><span data-if="c" style="display:none">ConnectFragments</span><span data-if="cpp" style="display:none">ConnectFragments</span><span data-if="com" style="display:none">ConnectFragments</span><span data-if="dotnet" style="display:none">connectFragments</span><span data-if="python" style="display:none">connect_fragments</span></code></i></a>.
</p>
<p><a href="#ConnectFragments"><i><code><span data-if="hdevelop" style="display:inline">ConnectFragments</span><span data-if="c" style="display:none">ConnectFragments</span><span data-if="cpp" style="display:none">ConnectFragments</span><span data-if="com" style="display:none">ConnectFragments</span><span data-if="dotnet" style="display:none">connectFragments</span><span data-if="python" style="display:none">connect_fragments</span></code></i></a>:
Set this parameter to <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i> if the extracted symbols are
fragmented, i.e., if a symbol is not extracted as one region but broken
up into several parts. See also <a href="#FragmentDistance"><i><code><span data-if="hdevelop" style="display:inline">FragmentDistance</span><span data-if="c" style="display:none">FragmentDistance</span><span data-if="cpp" style="display:none">FragmentDistance</span><span data-if="com" style="display:none">FragmentDistance</span><span data-if="dotnet" style="display:none">fragmentDistance</span><span data-if="python" style="display:none">fragment_distance</span></code></i></a> and
<a href="#StopAfter"><i><code><span data-if="hdevelop" style="display:inline">StopAfter</span><span data-if="c" style="display:none">StopAfter</span><span data-if="cpp" style="display:none">StopAfter</span><span data-if="com" style="display:none">StopAfter</span><span data-if="dotnet" style="display:none">stopAfter</span><span data-if="python" style="display:none">stop_after</span></code></i></a> in the step <i><span data-if="hdevelop" style="display:inline">'step3_connect_fragments'</span><span data-if="c" style="display:none">"step3_connect_fragments"</span><span data-if="cpp" style="display:none">"step3_connect_fragments"</span><span data-if="com" style="display:none">"step3_connect_fragments"</span><span data-if="dotnet" style="display:none">"step3_connect_fragments"</span><span data-if="python" style="display:none">"step3_connect_fragments"</span></i>.
</p>
<p><a href="#ClutterSizeMax"><i><code><span data-if="hdevelop" style="display:inline">ClutterSizeMax</span><span data-if="c" style="display:none">ClutterSizeMax</span><span data-if="cpp" style="display:none">ClutterSizeMax</span><span data-if="com" style="display:none">ClutterSizeMax</span><span data-if="dotnet" style="display:none">clutterSizeMax</span><span data-if="python" style="display:none">clutter_size_max</span></code></i></a>:
If the extracted characters contain clutter, i.e., small regions near the
actual symbols, increase this value. If parts of the symbols are missing,
decrease this value.
</p>
<p><a href="#StopAfter"><i><code><span data-if="hdevelop" style="display:inline">StopAfter</span><span data-if="c" style="display:none">StopAfter</span><span data-if="cpp" style="display:none">StopAfter</span><span data-if="com" style="display:none">StopAfter</span><span data-if="dotnet" style="display:none">stopAfter</span><span data-if="python" style="display:none">stop_after</span></code></i></a>:
Use this parameter in the case 该算子 does not produce the
desired results. By modifying this value 该算子 stops after the
execution of the selected step and provides the corresponding results.
To end on completion, set <a href="#StopAfter"><i><code><span data-if="hdevelop" style="display:inline">StopAfter</span><span data-if="c" style="display:none">StopAfter</span><span data-if="cpp" style="display:none">StopAfter</span><span data-if="com" style="display:none">StopAfter</span><span data-if="dotnet" style="display:none">stopAfter</span><span data-if="python" style="display:none">stop_after</span></code></i></a> to <i><span data-if="hdevelop" style="display:inline">'completion'</span><span data-if="c" style="display:none">"completion"</span><span data-if="cpp" style="display:none">"completion"</span><span data-if="com" style="display:none">"completion"</span><span data-if="dotnet" style="display:none">"completion"</span><span data-if="python" style="display:none">"completion"</span></i>.
</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  
    <li>在元组级别自动并行化。</li>
  
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="Region" class="parname"><b><code><span data-if="hdevelop" style="display:inline">区域</span><span data-if="c" style="display:none">区域</span><span data-if="cpp" style="display:none">区域</span><span data-if="com" style="display:none">区域</span><span data-if="dotnet" style="display:none">区域</span><span data-if="python" style="display:none">区域</span></code></b> (input_object)  </span><span>region(-array) <code>→</code> <span data-if="hdevelop" style="display:inline">object</span><span data-if="dotnet" style="display:none"><a href="HRegion.html">HRegion</a></span><span data-if="python" style="display:none">HObject</span><span data-if="cpp" style="display:none"><a href="HRegion.html">HRegion</a></span><span data-if="c" style="display:none">Hobject</span></span>
</div>
<p class="pardesc">Region of text lines in which to select the characters.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="RegionCharacters" class="parname"><b><code><span data-if="hdevelop" style="display:inline">RegionCharacters</span><span data-if="c" style="display:none">RegionCharacters</span><span data-if="cpp" style="display:none">RegionCharacters</span><span data-if="com" style="display:none">RegionCharacters</span><span data-if="dotnet" style="display:none">regionCharacters</span><span data-if="python" style="display:none">region_characters</span></code></b> (output_object)  </span><span>region(-array) <code>→</code> <span data-if="hdevelop" style="display:inline">object</span><span data-if="dotnet" style="display:none"><a href="HRegion.html">HRegion</a></span><span data-if="python" style="display:none">HObject</span><span data-if="cpp" style="display:none"><a href="HRegion.html">HRegion</a></span><span data-if="c" style="display:none">Hobject *</span></span>
</div>
<p class="pardesc">Selected characters.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="DotPrint" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DotPrint</span><span data-if="c" style="display:none">DotPrint</span><span data-if="cpp" style="display:none">DotPrint</span><span data-if="com" style="display:none">DotPrint</span><span data-if="dotnet" style="display:none">dotPrint</span><span data-if="python" style="display:none">dot_print</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Should dot print characters be detected?</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'false'</span>
    <span data-if="c" style="display:none">"false"</span>
    <span data-if="cpp" style="display:none">"false"</span>
    <span data-if="com" style="display:none">"false"</span>
    <span data-if="dotnet" style="display:none">"false"</span>
    <span data-if="python" style="display:none">"false"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="StrokeWidth" class="parname"><b><code><span data-if="hdevelop" style="display:inline">StrokeWidth</span><span data-if="c" style="display:none">StrokeWidth</span><span data-if="cpp" style="display:none">StrokeWidth</span><span data-if="com" style="display:none">StrokeWidth</span><span data-if="dotnet" style="display:none">strokeWidth</span><span data-if="python" style="display:none">stroke_width</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Stroke width of a character.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'medium'</span>
    <span data-if="c" style="display:none">"medium"</span>
    <span data-if="cpp" style="display:none">"medium"</span>
    <span data-if="com" style="display:none">"medium"</span>
    <span data-if="dotnet" style="display:none">"medium"</span>
    <span data-if="python" style="display:none">"medium"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'bold'</span><span data-if="c" style="display:none">"bold"</span><span data-if="cpp" style="display:none">"bold"</span><span data-if="com" style="display:none">"bold"</span><span data-if="dotnet" style="display:none">"bold"</span><span data-if="python" style="display:none">"bold"</span>, <span data-if="hdevelop" style="display:inline">'light'</span><span data-if="c" style="display:none">"light"</span><span data-if="cpp" style="display:none">"light"</span><span data-if="com" style="display:none">"light"</span><span data-if="dotnet" style="display:none">"light"</span><span data-if="python" style="display:none">"light"</span>, <span data-if="hdevelop" style="display:inline">'medium'</span><span data-if="c" style="display:none">"medium"</span><span data-if="cpp" style="display:none">"medium"</span><span data-if="com" style="display:none">"medium"</span><span data-if="dotnet" style="display:none">"medium"</span><span data-if="python" style="display:none">"medium"</span>, <span data-if="hdevelop" style="display:inline">'ultra_light'</span><span data-if="c" style="display:none">"ultra_light"</span><span data-if="cpp" style="display:none">"ultra_light"</span><span data-if="com" style="display:none">"ultra_light"</span><span data-if="dotnet" style="display:none">"ultra_light"</span><span data-if="python" style="display:none">"ultra_light"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="CharWidth" class="parname"><b><code><span data-if="hdevelop" style="display:inline">CharWidth</span><span data-if="c" style="display:none">CharWidth</span><span data-if="cpp" style="display:none">CharWidth</span><span data-if="com" style="display:none">CharWidth</span><span data-if="dotnet" style="display:none">charWidth</span><span data-if="python" style="display:none">char_width</span></code></b> (input_control)  </span><span>integer-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Width of a character.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>25</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>1
          ≤
        
    <span data-if="hdevelop" style="display:inline">CharWidth</span>
    <span data-if="c" style="display:none">CharWidth</span>
    <span data-if="cpp" style="display:none">CharWidth</span>
    <span data-if="com" style="display:none">CharWidth</span>
    <span data-if="dotnet" style="display:none">charWidth</span>
    <span data-if="python" style="display:none">char_width</span>
    </code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="CharHeight" class="parname"><b><code><span data-if="hdevelop" style="display:inline">CharHeight</span><span data-if="c" style="display:none">CharHeight</span><span data-if="cpp" style="display:none">CharHeight</span><span data-if="com" style="display:none">CharHeight</span><span data-if="dotnet" style="display:none">charHeight</span><span data-if="python" style="display:none">char_height</span></code></b> (input_control)  </span><span>integer-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Height of a character.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>25</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>1
          ≤
        
    <span data-if="hdevelop" style="display:inline">CharHeight</span>
    <span data-if="c" style="display:none">CharHeight</span>
    <span data-if="cpp" style="display:none">CharHeight</span>
    <span data-if="com" style="display:none">CharHeight</span>
    <span data-if="dotnet" style="display:none">charHeight</span>
    <span data-if="python" style="display:none">char_height</span>
    </code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Punctuation" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Punctuation</span><span data-if="c" style="display:none">Punctuation</span><span data-if="cpp" style="display:none">Punctuation</span><span data-if="com" style="display:none">Punctuation</span><span data-if="dotnet" style="display:none">punctuation</span><span data-if="python" style="display:none">punctuation</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Add punctuation?</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'false'</span>
    <span data-if="c" style="display:none">"false"</span>
    <span data-if="cpp" style="display:none">"false"</span>
    <span data-if="com" style="display:none">"false"</span>
    <span data-if="dotnet" style="display:none">"false"</span>
    <span data-if="python" style="display:none">"false"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="DiacriticMarks" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DiacriticMarks</span><span data-if="c" style="display:none">DiacriticMarks</span><span data-if="cpp" style="display:none">DiacriticMarks</span><span data-if="com" style="display:none">DiacriticMarks</span><span data-if="dotnet" style="display:none">diacriticMarks</span><span data-if="python" style="display:none">diacritic_marks</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Exist diacritic marks?</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'false'</span>
    <span data-if="c" style="display:none">"false"</span>
    <span data-if="cpp" style="display:none">"false"</span>
    <span data-if="com" style="display:none">"false"</span>
    <span data-if="dotnet" style="display:none">"false"</span>
    <span data-if="python" style="display:none">"false"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="PartitionMethod" class="parname"><b><code><span data-if="hdevelop" style="display:inline">PartitionMethod</span><span data-if="c" style="display:none">PartitionMethod</span><span data-if="cpp" style="display:none">PartitionMethod</span><span data-if="com" style="display:none">PartitionMethod</span><span data-if="dotnet" style="display:none">partitionMethod</span><span data-if="python" style="display:none">partition_method</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Method to partition neighbored characters.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'none'</span>
    <span data-if="c" style="display:none">"none"</span>
    <span data-if="cpp" style="display:none">"none"</span>
    <span data-if="com" style="display:none">"none"</span>
    <span data-if="dotnet" style="display:none">"none"</span>
    <span data-if="python" style="display:none">"none"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'fixed_width'</span><span data-if="c" style="display:none">"fixed_width"</span><span data-if="cpp" style="display:none">"fixed_width"</span><span data-if="com" style="display:none">"fixed_width"</span><span data-if="dotnet" style="display:none">"fixed_width"</span><span data-if="python" style="display:none">"fixed_width"</span>, <span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span>, <span data-if="hdevelop" style="display:inline">'variable_width'</span><span data-if="c" style="display:none">"variable_width"</span><span data-if="cpp" style="display:none">"variable_width"</span><span data-if="com" style="display:none">"variable_width"</span><span data-if="dotnet" style="display:none">"variable_width"</span><span data-if="python" style="display:none">"variable_width"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="PartitionLines" class="parname"><b><code><span data-if="hdevelop" style="display:inline">PartitionLines</span><span data-if="c" style="display:none">PartitionLines</span><span data-if="cpp" style="display:none">PartitionLines</span><span data-if="com" style="display:none">PartitionLines</span><span data-if="dotnet" style="display:none">partitionLines</span><span data-if="python" style="display:none">partition_lines</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Should lines be partitioned?</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'false'</span>
    <span data-if="c" style="display:none">"false"</span>
    <span data-if="cpp" style="display:none">"false"</span>
    <span data-if="com" style="display:none">"false"</span>
    <span data-if="dotnet" style="display:none">"false"</span>
    <span data-if="python" style="display:none">"false"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="FragmentDistance" class="parname"><b><code><span data-if="hdevelop" style="display:inline">FragmentDistance</span><span data-if="c" style="display:none">FragmentDistance</span><span data-if="cpp" style="display:none">FragmentDistance</span><span data-if="com" style="display:none">FragmentDistance</span><span data-if="dotnet" style="display:none">fragmentDistance</span><span data-if="python" style="display:none">fragment_distance</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Distance of fragments.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'medium'</span>
    <span data-if="c" style="display:none">"medium"</span>
    <span data-if="cpp" style="display:none">"medium"</span>
    <span data-if="com" style="display:none">"medium"</span>
    <span data-if="dotnet" style="display:none">"medium"</span>
    <span data-if="python" style="display:none">"medium"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'medium'</span><span data-if="c" style="display:none">"medium"</span><span data-if="cpp" style="display:none">"medium"</span><span data-if="com" style="display:none">"medium"</span><span data-if="dotnet" style="display:none">"medium"</span><span data-if="python" style="display:none">"medium"</span>, <span data-if="hdevelop" style="display:inline">'narrow'</span><span data-if="c" style="display:none">"narrow"</span><span data-if="cpp" style="display:none">"narrow"</span><span data-if="com" style="display:none">"narrow"</span><span data-if="dotnet" style="display:none">"narrow"</span><span data-if="python" style="display:none">"narrow"</span>, <span data-if="hdevelop" style="display:inline">'wide'</span><span data-if="c" style="display:none">"wide"</span><span data-if="cpp" style="display:none">"wide"</span><span data-if="com" style="display:none">"wide"</span><span data-if="dotnet" style="display:none">"wide"</span><span data-if="python" style="display:none">"wide"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ConnectFragments" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ConnectFragments</span><span data-if="c" style="display:none">ConnectFragments</span><span data-if="cpp" style="display:none">ConnectFragments</span><span data-if="com" style="display:none">ConnectFragments</span><span data-if="dotnet" style="display:none">connectFragments</span><span data-if="python" style="display:none">connect_fragments</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Connect fragments?</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'false'</span>
    <span data-if="c" style="display:none">"false"</span>
    <span data-if="cpp" style="display:none">"false"</span>
    <span data-if="com" style="display:none">"false"</span>
    <span data-if="dotnet" style="display:none">"false"</span>
    <span data-if="python" style="display:none">"false"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ClutterSizeMax" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ClutterSizeMax</span><span data-if="c" style="display:none">ClutterSizeMax</span><span data-if="cpp" style="display:none">ClutterSizeMax</span><span data-if="com" style="display:none">ClutterSizeMax</span><span data-if="dotnet" style="display:none">clutterSizeMax</span><span data-if="python" style="display:none">clutter_size_max</span></code></b> (input_control)  </span><span>integer <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">int</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Maximum size of clutter.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0</p>
<p class="pardesc"><span class="parcat">Value range:
      </span><code>0
          ≤
        
    <span data-if="hdevelop" style="display:inline">ClutterSizeMax</span>
    <span data-if="c" style="display:none">ClutterSizeMax</span>
    <span data-if="cpp" style="display:none">ClutterSizeMax</span>
    <span data-if="com" style="display:none">ClutterSizeMax</span>
    <span data-if="dotnet" style="display:none">clutterSizeMax</span>
    <span data-if="python" style="display:none">clutter_size_max</span>
    </code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="StopAfter" class="parname"><b><code><span data-if="hdevelop" style="display:inline">StopAfter</span><span data-if="c" style="display:none">StopAfter</span><span data-if="cpp" style="display:none">StopAfter</span><span data-if="com" style="display:none">StopAfter</span><span data-if="dotnet" style="display:none">stopAfter</span><span data-if="python" style="display:none">stop_after</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Stop execution after this step.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'completion'</span>
    <span data-if="c" style="display:none">"completion"</span>
    <span data-if="cpp" style="display:none">"completion"</span>
    <span data-if="com" style="display:none">"completion"</span>
    <span data-if="dotnet" style="display:none">"completion"</span>
    <span data-if="python" style="display:none">"completion"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'completion'</span><span data-if="c" style="display:none">"completion"</span><span data-if="cpp" style="display:none">"completion"</span><span data-if="com" style="display:none">"completion"</span><span data-if="dotnet" style="display:none">"completion"</span><span data-if="python" style="display:none">"completion"</span>, <span data-if="hdevelop" style="display:inline">'step1_select_candidates'</span><span data-if="c" style="display:none">"step1_select_candidates"</span><span data-if="cpp" style="display:none">"step1_select_candidates"</span><span data-if="com" style="display:none">"step1_select_candidates"</span><span data-if="dotnet" style="display:none">"step1_select_candidates"</span><span data-if="python" style="display:none">"step1_select_candidates"</span>, <span data-if="hdevelop" style="display:inline">'step2_partition_characters'</span><span data-if="c" style="display:none">"step2_partition_characters"</span><span data-if="cpp" style="display:none">"step2_partition_characters"</span><span data-if="com" style="display:none">"step2_partition_characters"</span><span data-if="dotnet" style="display:none">"step2_partition_characters"</span><span data-if="python" style="display:none">"step2_partition_characters"</span>, <span data-if="hdevelop" style="display:inline">'step3_connect_fragments'</span><span data-if="c" style="display:none">"step3_connect_fragments"</span><span data-if="cpp" style="display:none">"step3_connect_fragments"</span><span data-if="com" style="display:none">"step3_connect_fragments"</span><span data-if="dotnet" style="display:none">"step3_connect_fragments"</span><span data-if="python" style="display:none">"step3_connect_fragments"</span>, <span data-if="hdevelop" style="display:inline">'step4_select_characters'</span><span data-if="c" style="display:none">"step4_select_characters"</span><span data-if="cpp" style="display:none">"step4_select_characters"</span><span data-if="com" style="display:none">"step4_select_characters"</span><span data-if="dotnet" style="display:none">"step4_select_characters"</span><span data-if="python" style="display:none">"step4_select_characters"</span></p>
</div>
<h2 id="sec_example_all">例程 (HDevelop)</h2>
<pre class="example">
for Index := 1 to 5 by 1
  read_image (Image, 'dot_print_rotated/dot_print_rotated_'+Index$'02d')
  text_line_orientation (Image, Image, 50, rad(-30), rad(30), \
                         OrientationAngle)
  rotate_image (Image, ImageRotate, deg(-OrientationAngle), 'constant')
  segment_characters (ImageRotate, ImageRotate, ImageForeground, \
                      RegionForeground, 'local_auto_shape', 'false', \
                      'false', 'medium', 25, 25, 0, 10, UsedThreshold)
  select_characters (RegionForeground, RegionCharacters, 'true', \
                     'ultra_light', [60,1,100], [60,1,100], 'false', \
                     'false', 'none', 'true', 'wide', 'true', 0, 'completion')
endfor
</pre>
<h2 id="sec_result">结果</h2>
<p>If the input parameters are set correctly, 该算子
<code><span data-if="hdevelop" style="display:inline">select_characters</span><span data-if="c" style="display:none">select_characters</span><span data-if="cpp" style="display:none">SelectCharacters</span><span data-if="com" style="display:none">SelectCharacters</span><span data-if="dotnet" style="display:none">SelectCharacters</span><span data-if="python" style="display:none">select_characters</span></code> 返回值 <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .
Otherwise an exception will be raised.
</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="segment_characters.html"><span data-if="hdevelop" style="display:inline">segment_characters</span><span data-if="c" style="display:none">segment_characters</span><span data-if="cpp" style="display:none">SegmentCharacters</span><span data-if="com" style="display:none">SegmentCharacters</span><span data-if="dotnet" style="display:none">SegmentCharacters</span><span data-if="python" style="display:none">segment_characters</span></a></code>, 
<code><a href="text_line_slant.html"><span data-if="hdevelop" style="display:inline">text_line_slant</span><span data-if="c" style="display:none">text_line_slant</span><span data-if="cpp" style="display:none">TextLineSlant</span><span data-if="com" style="display:none">TextLineSlant</span><span data-if="dotnet" style="display:none">TextLineSlant</span><span data-if="python" style="display:none">text_line_slant</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="do_ocr_single_class_mlp.html"><span data-if="hdevelop" style="display:inline">do_ocr_single_class_mlp</span><span data-if="c" style="display:none">do_ocr_single_class_mlp</span><span data-if="cpp" style="display:none">DoOcrSingleClassMlp</span><span data-if="com" style="display:none">DoOcrSingleClassMlp</span><span data-if="dotnet" style="display:none">DoOcrSingleClassMlp</span><span data-if="python" style="display:none">do_ocr_single_class_mlp</span></a></code>, 
<code><a href="do_ocr_multi_class_mlp.html"><span data-if="hdevelop" style="display:inline">do_ocr_multi_class_mlp</span><span data-if="c" style="display:none">do_ocr_multi_class_mlp</span><span data-if="cpp" style="display:none">DoOcrMultiClassMlp</span><span data-if="com" style="display:none">DoOcrMultiClassMlp</span><span data-if="dotnet" style="display:none">DoOcrMultiClassMlp</span><span data-if="python" style="display:none">do_ocr_multi_class_mlp</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="connection.html"><span data-if="hdevelop" style="display:inline">connection</span><span data-if="c" style="display:none">connection</span><span data-if="cpp" style="display:none">Connection</span><span data-if="com" style="display:none">Connection</span><span data-if="dotnet" style="display:none">Connection</span><span data-if="python" style="display:none">connection</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Foundation</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
